const express=require("express")
const router=express.Router();
const pool=require("../pool");

router.get("/",(req,res)=>{
  var markData={
    carLogo:{},
    carList:{}
  };
  //什么两个空对象
  var carData=null,carChild;
  new Promise((resolve,reject)=>{
    //查询商城logo图片
    var sql=`select * from car_logo`;
    pool.query(sql,[],(err,result)=>{
      if(err) console.log(err);
 
      markData.carLogo = result
      resolve(true);
    })
  }).then(value=>{
    return new Promise((resolve,reject)=>{
    //查询字母表
      var sql=`select let,carLetId from car_letter`;
      pool.query(sql,[],(err,result)=>{
        if(err) console.log(err);
        // indexObj.swiImg=result;
        //carData字母表
        carData = result
        resolve(true);
      })
    })
  }).then(value=>{
    //查询汽车列表
    return new Promise((resolve,reject)=>{
      var sql=`select * from car_type`;
      pool.query(sql,[],(err,result)=>{
        if(err) console.log(err);
        carChild = result;
        //重新组合carData数据
        //循环字母表，往字母表里添加子数据
        for(var i=0;i<carData.length; i++){
          //创建一个carData[i]的空数组child
          carData[i].child = [];
          //给没个carData[i].child添加数据，
           for(var j=0; j<carChild.length;j++){
             //判断如果carData[i].carLetId与carChild[j].tid相等，说明他们是同一列的车
             //把数据push到carData[i].child里
             if(carData[i].carLetId == carChild[j].tid){
                carData[i].child.push(carChild[j])
             }
           }
        }
        markData.carList= carData;
        //console.log(markData);
        res.send(JSON.stringify(markData)); 
        res.end();
      })
    })
  }).catch(err=>{
    throw new Error(err);  //当catch中new Error时，后面的then不会执行(绕过)
  })
})
module.exports=router;